package com.rc.saas.tenant.model.msg;

import com.alibaba.excel.annotation.ExcelIgnore;
import com.alibaba.excel.annotation.ExcelProperty;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.rc.saas.tenant.base.BaseModel;
import com.rc.saas.tenant.model.tenant.TenantStatusConverter;
import org.springframework.format.annotation.DateTimeFormat;

import java.util.Date;

public class TenantNotice extends BaseModel {

    @ExcelIgnore
    private Long noticeId;

    @ExcelProperty(value = "运营商代码",index = 0)
    private String tenantCode;

    @ExcelIgnore
    private String memberType;

    @ExcelProperty(value = "公告类型",index = 1, converter = TenantNoticeTypeConverter.class)
    private String noticeType;

    @ExcelIgnore
    private String informType;

    @ExcelProperty(value = "标题",index = 2)
    private String title;

    @ExcelProperty(value = "内容",index = 3)
    private String content;

    @ExcelIgnore
    private String imgUrl;

    @ExcelIgnore
    private String accessUrl;

    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @ExcelIgnore
    private Date publishTime;

    @ExcelProperty(value = "状态",index = 6, converter = TenantStatusConverter.class)
    private String status;

    @ExcelProperty(value = "创建人",index = 4)
    private String createdBy;

    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @ExcelProperty(value = "创建时间",index = 5)
    private Date createdTime;

    @ExcelIgnore
    private String lastUpdatedBy;

    @ExcelIgnore
    private Date lastUpdatedTime;

    @ExcelIgnore
    private String sendRegularly;

    @ExcelIgnore
    private String mobiles;

    public String getMobiles() {
        return mobiles;
    }

    public void setMobiles(String mobiles) {
        this.mobiles = mobiles;
    }

    public String getSendRegularly() {
        return sendRegularly;
    }

    public void setSendRegularly(String sendRegularly) {
        this.sendRegularly = sendRegularly;
    }

    public Long getNoticeId() {
        return noticeId;
    }

    public void setNoticeId(Long noticeId) {
        this.noticeId = noticeId;
    }

    public String getTenantCode() {
        return tenantCode;
    }

    public void setTenantCode(String tenantCode) {
        this.tenantCode = tenantCode;
    }

    public String getMemberType() {
        return memberType;
    }

    public void setMemberType(String memberType) {
        this.memberType = memberType;
    }

    public String getNoticeType() {
        return noticeType;
    }

    public void setNoticeType(String noticeType) {
        this.noticeType = noticeType;
    }

    public String getInformType() {
        return informType;
    }

    public void setInformType(String informType) {
        this.informType = informType;
    }

    public String getTitle() {
        return title;
    }

    public void setTitle(String title) {
        this.title = title;
    }

    public String getContent() {
        return content;
    }

    public void setContent(String content) {
        this.content = content;
    }

    public String getImgUrl() {
        return imgUrl;
    }

    public void setImgUrl(String imgUrl) {
        this.imgUrl = imgUrl;
    }

    public String getAccessUrl() {
        return accessUrl;
    }

    public void setAccessUrl(String accessUrl) {
        this.accessUrl = accessUrl;
    }

    public Date getPublishTime() {
        return publishTime;
    }

    public void setPublishTime(Date publishTime) {
        this.publishTime = publishTime;
    }

    public String getStatus() {
        return status;
    }

    public void setStatus(String status) {
        this.status = status;
    }

    public String getCreatedBy() {
        return createdBy;
    }

    public void setCreatedBy(String createdBy) {
        this.createdBy = createdBy;
    }

    public Date getCreatedTime() {
        return createdTime;
    }

    public void setCreatedTime(Date createdTime) {
        this.createdTime = createdTime;
    }

    public String getLastUpdatedBy() {
        return lastUpdatedBy;
    }

    public void setLastUpdatedBy(String lastUpdatedBy) {
        this.lastUpdatedBy = lastUpdatedBy;
    }

    public Date getLastUpdatedTime() {
        return lastUpdatedTime;
    }

    public void setLastUpdatedTime(Date lastUpdatedTime) {
        this.lastUpdatedTime = lastUpdatedTime;
    }
}